1. Field of the Invention
The present invention relates to generating random test cycles for hardware verification, and more particularly to generating multiple simultaneous random test cycles for hardware verification of multiple functions of a design under test.
2. Description of the Related Art
In performing hardware verification for a chip design, the system environment in which the chip is to be placed is simulated with the goal of eliminating chip design problems before proceeding to fabrication of the chip. Since chip fabrication is both time consuming and expensive, much effort is directed to ensuring that a chip will run properly in the intended system environment. Simulation thus occupies an ever-increasing portion of the design cycle for a chip. Following fabrication of the silicon, a chip is installed onto a hardware platform and may be subjected to additional testing.
One conventional directed testing technique has been to use a random base cycle generator to simulate generation of random base cycles (events or activities) for a design under test. Random base cycles are the standard random cycles, such as memory and I/O cycles, executed on a design under test. The base random cycle generator produces random base cycles for a fixed set of tests (or modes) for a design under test through a cycle initiator. Interaction between blocks of a design under test significantly affects the functionality of a design under test. For a complex design under test, multiple test cycles may occur simultaneously and randomly within the system, resulting in certain scenarios of concern. So far as it is known, these scenarios of concern have been undetectable with conventional random base cycle generators.
The cycle initiator most commonly used with a base random cycle generator is a serial cycle initiator. A serial cycle initiator may only initiate one random cycle at a time. A conventional approach therefore has been to view and study the execution of a random cycle independent of the execution of other random cycles, despite the interdependencies of many random cycles.